package com.yilin.tms.order.service.payment;

import com.baomidou.mybatisplus.extension.service.IService;
import com.yilin.tms.core.application.PageData;
import com.yilin.tms.core.entity.capital.TradeRecord;
import com.yilin.tms.core.entity.order.clearing.ClearingDetail;
import com.yilin.tms.core.entity.order.payment.OrderSettlementCost;
import com.yilin.tms.core.entity.order.transit.TransitOrder;
import com.yilin.tms.core.entity.user.account.Account;

import java.util.List;

public interface IOrderSettlementCostService extends IService<OrderSettlementCost> {

    void updateOrderSettlementResult(TradeRecord tradeRecord, Account loginUser);

    OrderSettlementCost generateOrderSettlement(TransitOrder transitOrder, ClearingDetail clearingDetail);

    OrderSettlementCost getOrderSettlementCostByTransitOrderId(String transitOrderId);

    PageData<OrderSettlementCost> getOrderSettlementPage(OrderSettlementCost query, Account loginUser, Integer page, Integer limit);

    List<OrderSettlementCost> getOrderSettlementListByIds(List<String> orderSettlementIds);

    List<OrderSettlementCost> getOrderSettlementListByTransOrderIds(List<String> transOrderIdList);


}
